﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Grain.Crm.ExcelExtractor.Input;
using Grain.Crm.ExcelExtractor.InputDescription;

namespace Grain.Crm.ExcelExtractor.InputDescription.Sheets
{
    public class ProfileSheetDescription : SheetDescription
    {
        public void Build()
        {
            this.SheetName = "Profile";

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Telefon", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Phone", Column = 3, Row = 4 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Mobile", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Mobile Phone", Column = 3, Row = 5 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Email", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Personal e-mail", Column = 3, Row = 6 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "FirstName", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "First Name", Column = 3, Row = 7 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LastName", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Last Name", Column = 3, Row = 8 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Title", CrmEntity = CrmEntityName.Contact, IsPicklist = true, CrmDisplayName = "Title", Column = 3, Row = 9 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "DateOfBirth", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Birthday", Column = 3, Row = 10 });


            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Street", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Street", Column = 3, Row = 11 });
            this.Descriptions.Add(new ValueDescription() { XlsDescription = "City", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "City", Column = 3, Row = 12 });
            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Country", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Country", Column = 3, Row = 13 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Gender", CrmEntity = CrmEntityName.Contact, IsPicklist = true, CrmDisplayName = "Gender", Column = 3, Row = 14 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "MaritalStatus", CrmEntity = CrmEntityName.Contact, IsPicklist = true, CrmDisplayName = "Marital Status", Column = 3, Row = 15 });


            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilitySlovakLevel", IsSpecial = true, Column = 3, Row = 17 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilitySlovakYears", IsSpecial = true, Column = 4, Row = 17 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityGermanLevel", IsSpecial = true, Column = 3, Row = 18 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityGermanYears", IsSpecial = true, Column = 4, Row = 18 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityEnglishLevel", IsSpecial = true, Column = 3, Row = 19 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityEnglishYears", IsSpecial = true, Column = 4, Row = 19 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityRussianLevel", IsSpecial = true, Column = 3, Row = 20 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityRussianYears", IsSpecial = true, Column = 4, Row = 20 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityFrenchLevel", IsSpecial = true, Column = 3, Row = 21 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilityFrenchYears", IsSpecial = true, Column = 4, Row = 21 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilitySpainLevel", IsSpecial = true, Column = 3, Row = 22 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "LanguageAbilitySpainYears", IsSpecial = true, Column = 4, Row = 22 });


            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Main Work Resposibilities", IsSpecial = true, Column = 3, Row = 23 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Current company", CrmEntity = CrmEntityName.Contact, IsLookup = true, CrmDisplayName = "Company", Column = 3, Row = 24 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "JobTitle", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Job Title", Column = 3, Row = 25 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Expected Salary", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Expected Salary", IsNumber = true, Column = 3, Row = 26 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Expected hourly fee", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Expected hourly fee",IsNumber = true ,Column = 3, Row = 27 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Possible Start From", CrmEntity = CrmEntityName.Contact, CrmDisplayName = "Possible start", Column = 3, Row = 28 });

            this.Descriptions.Add(new ValueDescription() { XlsDescription = "Profile Filled On", IsSpecial = true, Column = 3, Row = 29 });


        }
    }
}